#include <iostream>
#include <set>

using namespace std;

int a[] = {10, 60, 20, 70, 80, 30, 90, 40, 100, 50};

int main()
{
    set<int> mp;
    // 插入
    for(auto x : a)
    {
        mp.insert(x);
    }
    // 遍历
    for(auto x : mp)
    {
        cout << x << " ";
    }
    cout << endl;

    // find查找一个元素，返回的是迭代器，一般不用
    // count查询元素出现的次数，一般判断元素是否出现在红黑树中
    if(mp.count(1)) cout << "1" << endl;
    
    mp.erase(30);
    
    // lower_bound 大于等于x的最小元素，返回的是迭代器
    // upper_bound 大于x的最小元素，返回的是迭代器
    auto x = mp.lower_bound(20);
    auto y = mp.upper_bound(20);
    cout << *x << " " << *y << endl;

    return 0;
}